This clock allows easy access to the free running hardware
counter. This SGI specific clock maps the counter into
the application address space and returns the current
value. Handling of the counter wraps on machines with
small counters is left to the application. To find the
number of bit the counter supports the application may
call _ssss_yyyy_ssss_ssss_gggg_iiii_((((_)))) with the _SSSS_GGGG_IIII______CCCC_YYYY_CCCC_LLLL_EEEE_CCCC_NNNN_TTTT_RRRR______SSSS_IIII_ZZZZ_EEEE request. This
clock only is usable as a _c_l_o_c_k__i_d for the _cccc_llll_oooo_cccc_kkkk______gggg_eeee_tttt_tttt_iiii_mmmm_eeee_((((_))))
and _cccc_llll_oooo_cccc_kkkk______gggg_eeee_tttt_rrrr_eeee_ssss_((((_)))) functions. This clock is SGI specific
_CCCC_LLLL_OOOO_CCCC_KKKK______SSSS_GGGG_IIII______FFFF_AAAA_SSSS_TTTT This clock has a higher resolution than _CCCC_LLLL_OOOO_CCCC_KKKK______RRRR_EEEE_AAAA_LLLL_TTTT_IIII_MMMM_EEEE and
is available to privileged users only. This clock only is
usable as a _c_l_o_c_k__i_d. for the _cccc_llll_oooo_cccc_kkkk______gggg_eeee_tttt_rrrr_eeee_ssss_((((_)))) and
_tttt_iiii_mmmm_eeee_rrrr______cccc_rrrr_eeee_aaaa_tttt_eeee_((((_)))) functions. This clock is SGI specific and
The cccclllloooocccckkkk____sssseeeettttttttiiiimmmmeeee(((()))), cccclllloooocccckkkk____ggggeeeettttttttiiiimmmmeeee(((()))), and cccclllloooocccckkkk____ggggeeeettttrrrreeeessss(((()))) return a value
of 0 to the calling process if the operation is successful; otherwise the
functions shall return a value of -1 and shall set _e_r_r_n_o to indicate the
error
[EINVAL] The _c_l_o_c_k__i_d argument is not a know clock.
The cccclllloooocccckkkk____sssseeeettttttttiiiimmmmeeee(((()))) call also supports the following values for _e_r_r_n_o
[EINVAL] The _t_p argument is outside the range for the given
_c_l_o_c_k__i_d , or the _t_p argument specified a nanosecond value
less then zero or greater then or equal to 1000 million
[EPERM] The requesting process does not have the appropriate